#ifndef QT_TRIGGER_EDITOR_FACTORY
#define QT_TRIGGER_EDITOR_FACTORY

#include <QWidget>
#include <QLineEdit>
#include <QPushButton>
#include <QHBoxLayout>
#include <qtpropertybrowser.h>
#include <qtvariantproperty.h>
#include <QtTriggerEditorManager.h>
#include <QUrl>

class QtTriggerEditorFactory : public QtAbstractEditorFactory<QtTriggerEditorManager>
{
    Q_OBJECT
public:
    QtTriggerEditorFactory(QObject *parent=0);
    virtual ~QtTriggerEditorFactory();


protected:
    virtual void connectPropertyManager (QtTriggerEditorManager *manager);
    virtual QWidget * createEditor (QtTriggerEditorManager *manager, QtProperty *property, QWidget *parent);
    virtual void disconnectPropertyManager (QtTriggerEditorManager *manager);
private slots:
    void slotButtonClicked(bool);
private:
    QMap<QtProperty *, QPushButton* > m_propertyToWidget;
    QMap<QPushButton *, QtProperty *> m_WidgetToProperty;
};

#endif // QT_TRIGGER_EDITOR_FACTORY
